package com.xgry.bpm.api.base.socketuser.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.xgry.bpm.api.base.socketuser.entity.SocketUser;

import java.util.List;

import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;

/**
 * <p>
 * SocketUser服务类
 * </p>
 */
public interface SocketUserService extends IService<SocketUser> {


        /**
        * 根据主键删除信息对象
        * 逻辑删除,字段改为删除态
        * @param id 主键
        * @return 影响记录数
        */
        int deleteById(String id);

        /**
        * 根据主键查询信息对象
        * @param id 主键
        * @return 信息对象
        */
    SocketUser selectById(String id);

        /**
        * 根据主键查询信息对象
        * @param record 查询请求条件
        * @return 信息列表
        */
        List<SocketUser> selectAll(SocketUser record);

        /**
        * 分页查询信息对象
        * @param record 查询请求条件
        * @return 信息列表
        */
        IPage<SocketUser> selectPage(IPage<SocketUser> page , SocketUser record );

        /**
        * 分页查询信息对象
        *
        * @param page 分页条件   queryWrapper 查询条件
        * @return 信息列表
        */
        IPage<SocketUser> getPage(IPage<SocketUser> page,QueryWrapper<SocketUser> queryWrapper);


    List<SocketUser> findByfoUser(int foUser);

    int countMessage(Integer userId);

    List<SocketUser> findByUser(Integer userId);

    List<SocketUser> unreadMessage(Integer userId);

    List<SocketUser> readMessage(Integer userId);

    boolean deleteSocketUsers(List<SocketUser> list);
}